A network node, such as a switch or router, functions to move traffic between different inputs and outputs in order to advance individual units of traffic, such as packets, from source towards destination. Nodes typically includes a plurality of inputs and outputs which are interconnected by a fabric. Inputs may be combined, such as by multiplexing, on line cards in a node to reduce the corresponding complexity and cost of the fabric and other parts of the node.
Techniques for providing “fair” forwarding of multiplexed inputs are known. Traffic in a packet-based data network tends to fluctuate over relatively short intervals of time. In order to handle short-term traffic fluctuation it is known to employ input buffering on the line cards. Input buffers are typically organized into queues associated with different inputs, which are multiplexed. Fairness is implemented by managing forwarding of packets from the queues. For example, round-robin scheduling provides equal forwarding fairness to each queue of a group of managed queues by forwarding one packet from each queue in succession. However, round-robin scheduling may result in disproportionate dropping of packets of particular inputs. For example, if in a given time interval one queue in the managed group is full and the other queues are nearly empty then all or nearly all of the packet drop (assuming there is packet drop) may be suffered by the full queue during that time interval. A technique referred to as Weighted Fair Queuing (“WFQ”) provides means for compensating for the disproportionate packet drop of the basic round-robin technique. In WFQ, a priority differentiator, i.e., weight, is assigned to each individual queue. The frequency of forwarding packets from each queue is proportional to the weight of the queue. In practice this may be accomplished by employing different clock rates with different queues. The weights for the different queues may be selected in accordance with anticipated traffic patterns in order to achieve desired form of fairness. However, network traffic rates may be unknown in advance, and may also tend to fluctuate over relatively long intervals of time, thereby causing the predetermined weighting to be less fair.